# 建立 Tuple
fruits = ("apple", "banana", "cherry")
# 取值(跟 List 一樣用索引)
print(fruits[0])
輸出:
apple
嘗試修改會報錯
Tuple 也可以解包
x, y, z = fruits
print(x)
print(y)
print(z)
輸出:
apple
banana
cherry
# 建立 Set
numbers = {1, 2, 3, 3, 2}
print(numbers) #自動去除重複
輸出:
{1, 2, 3}
# 新增元素
numbers.add(4)
print(numbers)
輸出:
{1, 2, 3, 4}
# 刪除元素
numbers.remove(2) # 如果不存在會報錯
numbers.discard(5) # 如果不存在也不會報錯
print(numbers)
輸出:
{1, 3, 4}
# 集合運算
a = {1, 2, 3}
b = {3, 4, 5}
print(a & b) # 交集
print(a | b) # 聯集
print(a - b) # 差集
輸出:
特性 | list(串列) | tuple(元組) | set(集合) |
---|---|---|---|
語法 | [] |
() |
{} 或 set() |
是否可變 | 可變 | 不可變 | 可變(但元素必須不可變) |
元素是否可重複 | 可重複 | 可重複 | 不可重複 |
元素是否有順序 | 有順序 | 有順序 | 無順序(印出的順序可能不同) |
索引存取 | 支援 | 支援 | 不支援 |
適用場合 | 一般資料操作 | 固定不變的資料 | 去除重複、數學集合運算 |
今天學到 tuple(元組)與 set(集合),加上之前的 list(串列),發現它們在語法和功能上看起來非常相似,一度搞不清楚它們的使用方式與適用時機。但一個一個列出來比較就很清楚了!
明天要學習的內容是Dict(字典)結構與應用!